import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
const federation = require('@originjs/vite-plugin-federation')

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [vue(),federation({
    name:"module-federation-demo",// 主应用名称
    remotes:{
      module_federation_child: 'http://127.0.0.1:5500/dist/assets/childEntry.js'
      // {
        // external: `Promise.resolve(window.PMH5_G.getRemoteAddress('boss-workbench-remote-h5'))`,
        // externalType: 'promise'
        // ChildHome: "http://127.0.0.1:5174/module-federation-child.js", // 远程模块入口文件的网络地址，用于获取远程模块的`remoteEntry.js`来加载组件
      // },
      
    },
    // 共享依赖
    shared:['vue']
  })],
  build: {
    // 假设有原生动态导入支持，并且将会转译得尽可能小
    target: ['chrome86','safari12'],
    // 启用混淆，减少模块体积
    minify: true,
    // 小于4096KB得引用资源将转为Base64，减少额外得HTTP请求
    assetsInlineLimit: 4096
  }
})
